#include "util.h"
#include "tables.h"

/*
  Here are MPEG1 Table B.8 and MPEG2 Table B.1
  -- Layer III scalefactor bands. 
  Index into this using a method such as:
    idx  = fr_ps->header->sampling_frequency
           + (fr_ps->header->version * 3)
*/




unsigned int hs = sizeof(HUFFBITS)*8;

static HUFFBITS      t1HB[]   = {
  1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
 1, 0}; 

static HUFFBITS      t2HB[]   = {
  1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  3, 2, 0};

static HUFFBITS      t3HB[]   = {
  3, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  3, 2, 0};

static HUFFBITS      t5HB[]   = {
  1, 2, 6, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  3, 1, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  7, 5, 7, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  6, 1, 1, 0};

static HUFFBITS      t6HB[]   = {
  7, 3, 5, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  6, 2, 3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  5, 4, 4, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  3, 3, 2, 0};

static HUFFBITS      t7HB[]   = {
   1, 2,10,19,16,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   3, 3, 7,10, 5, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  11, 4,13,17, 8, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  12,11,18,15,11, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   7, 6, 9,14, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
   6, 4, 5, 3, 2, 0};

static HUFFBITS      t8HB[]   = {
  3, 4, 6, 18,12, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  5, 1, 2, 16, 9, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  7, 3, 5, 14, 7, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
 19,17,15, 13,10, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
 13, 5, 8, 11, 5, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
 12, 4, 4,  1, 1, 0};

static HUFFBITS      t9HB[]   = {
  7, 5, 9, 14, 15, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  6, 4, 5,  5,  6, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  7, 6, 8,  8,  8, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
 15, 6, 9, 10,  5, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
 11, 7, 9,  6,  4, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
 14, 4, 6,  2,  6, 0};

static HUFFBITS      t10HB[]   = {
  1, 2, 10, 23, 35, 30, 12, 17, 0, 0, 0, 0, 0, 0, 0, 0,
  3, 3,  8, 12, 18, 21, 12,  7, 0, 0, 0, 0, 0, 0, 0, 0,
 11, 9, 15, 21, 32, 40, 19,  6, 0, 0, 0, 0, 0, 0, 0, 0,
 14,13, 22, 34, 46, 23, 18,  7, 0, 0, 0, 0, 0, 0, 0, 0,
 20,19, 33, 47, 27, 22,  9,  3, 0, 0, 0, 0, 0, 0, 0, 0,
 31,22, 41, 26, 21, 20,  5,  3, 0, 0, 0, 0, 0, 0, 0, 0,
 14,13, 10, 11, 16,  6,  5,  1, 0, 0, 0, 0, 0, 0, 0, 0,
  9, 8,  7,  8,  4,  4,  2,  0};

static HUFFBITS      t11HB[]   = {
  3, 4, 10, 24, 34, 33, 21, 15, 0, 0, 0, 0, 0, 0, 0, 0,
  5, 3,  4, 10, 32, 17, 11, 10, 0, 0, 0, 0, 0, 0, 0, 0,
 11, 7, 13, 18, 30, 31, 20,  5, 0, 0, 0, 0, 0, 0, 0, 0,
 25,11, 19, 59, 27, 18, 12,  5, 0, 0, 0, 0, 0, 0, 0, 0,
 35,33, 31, 58, 30, 16,  7,  5, 0, 0, 0, 0, 0, 0, 0, 0,
 28,26, 32, 19, 17, 15,  8, 14, 0, 0, 0, 0, 0, 0, 0, 0,
 14,12,  9, 13, 14,  9,  4,  1, 0, 0, 0, 0, 0, 0, 0, 0,
 11, 4,  6,  6,  6,  3,  2,  0};

static HUFFBITS      t12HB[]   = {
  9,  6, 16, 33, 41, 39, 38,26, 0, 0, 0, 0, 0, 0, 0, 0,
  7,  5,  6,  9, 23, 16, 26,11, 0, 0, 0, 0, 0, 0, 0, 0,
 17,  7, 11, 14, 21, 30, 10, 7, 0, 0, 0, 0, 0, 0, 0, 0,
 17, 10, 15, 12, 18, 28, 14, 5, 0, 0, 0, 0, 0, 0, 0, 0,
 32, 13, 22, 19, 18, 16,  9, 5, 0, 0, 0, 0, 0, 0, 0, 0,
 40, 17, 31, 29, 17, 13,  4, 2, 0, 0, 0, 0, 0, 0, 0, 0,
 27, 12, 11, 15, 10,  7,  4, 1, 0, 0, 0, 0, 0, 0, 0, 0,
 27, 12,  8, 12,  6,  3,  1, 0};

static HUFFBITS      t13HB[]   = {
  1,  5, 14, 21, 34, 51, 46, 71, 42, 52, 68, 52, 67, 44, 43, 19,
  3,  4, 12, 19, 31, 26, 44, 33, 31, 24, 32, 24, 31, 35, 22, 14,
 15, 13, 23, 36, 59, 49, 77, 65, 29, 40, 30, 40, 27, 33, 42, 16,
 22, 20, 37, 61, 56, 79, 73, 64, 43, 76, 56, 37, 26, 31, 25, 14,
 35, 16, 60, 57, 97, 75,114, 91, 54, 73, 55, 41, 48, 53, 23, 24,
 58, 27, 50, 96, 76, 70, 93, 84, 77, 58, 79, 29, 74, 49, 41, 17,
 47, 45, 78, 74,115, 94, 90, 79, 69, 83, 71, 50, 59, 38, 36, 15,
 72, 34, 56, 95, 92, 85, 91, 90, 86, 73, 77, 65, 51, 44, 43, 42,
 43, 20, 30, 44, 55, 78, 72, 87, 78, 61, 46, 54, 37, 30, 20, 16,
 53, 25, 41, 37, 44, 59, 54, 81, 66, 76, 57, 54, 37, 18, 39, 11,
 35, 33, 31, 57, 42, 82, 72, 80, 47, 58, 55, 21, 22, 26, 38, 22,
 53, 25, 23, 38, 70, 60, 51, 36, 55, 26, 34, 23, 27, 14,  9,  7,
 34, 32, 28, 39, 49, 75, 30, 52, 48, 40, 52, 28, 18, 17,  9,  5,
 45, 21, 34, 64, 56, 50, 49, 45, 31, 19, 12, 15, 10,  7,  6,  3,
 48, 23, 20, 39, 36, 35, 53, 21, 16, 23, 13, 10,  6,  1,  4,  2,
 16, 15, 17, 27, 25, 20, 29, 11, 17, 12, 16,  8,  1,  1,  0,  1};

static HUFFBITS      t15HB[]   = {
   7, 12, 18, 53, 47, 76,124,108, 89,123,108,119,107, 81,122, 63,
  13,  5, 16, 27, 46, 36, 61, 51, 42, 70, 52, 83, 65, 41, 59, 36,
  19, 17, 15, 24, 41, 34, 59, 48, 40, 64, 50, 78, 62, 80, 56, 33,
  29, 28, 25, 43, 39, 63, 55, 93, 76, 59, 93, 72, 54, 75, 50, 29,
  52, 22, 42, 40, 67, 57, 95, 79, 72, 57, 89, 69, 49, 66, 46, 27,
  77, 37, 35, 66, 58, 52, 91, 74, 62, 48, 79, 63, 90, 62, 40, 38,
 125, 32, 60, 56, 50, 92, 78, 65, 55, 87, 71, 51, 73, 51, 70, 30,
 109, 53, 49, 94, 88, 75, 66,122, 91, 73, 56, 42, 64, 44, 21, 25,
  90, 43, 41, 77, 73, 63, 56, 92, 77, 66, 47, 67, 48, 53, 36, 20,
  71, 34, 67, 60, 58, 49, 88, 76, 67,106, 71, 54, 38, 39, 23, 15,
 109, 53, 51, 47, 90, 82, 58, 57, 48, 72, 57, 41, 23, 27, 62,  9,
  86, 42, 40, 37, 70, 64, 52, 43, 70, 55, 42, 25, 29, 18, 11, 11, 
 118, 68, 30, 55, 50, 46, 74, 65, 49, 39, 24, 16, 22, 13, 14,  7,
  91, 44, 39, 38, 34, 63, 52, 45, 31, 52, 28, 19, 14,  8,  9,  3,
 123, 60, 58, 53, 47, 43, 32, 22, 37, 24, 17, 12, 15, 10,  2,  1,
  71, 37, 34, 30, 28, 20, 17, 26, 21, 16, 10,  6,  8,  6,  2,  0};

static HUFFBITS      t16HB[]   = {
   1,   5, 14, 44, 74, 63, 110, 93, 172, 149, 138, 242, 225, 195, 376, 17,
   3,   4, 12, 20, 35, 62,  53, 47,  83,  75,  68, 119, 201, 107, 207,  9,
  15,  13, 23, 38, 67, 58, 103, 90, 161,  72, 127, 117, 110, 209, 206, 16,
  45,  21, 39, 69, 64,114,  99, 87, 158, 140, 252, 212, 199, 387, 365, 26,
  75,  36, 68, 65,115,101, 179,164, 155, 264, 246, 226, 395, 382, 362,  9,
  66,  30, 59, 56,102,185, 173,265, 142, 253, 232, 400, 388, 378, 445, 16,
 111,  54, 52,100,184,178, 160,133, 257, 244, 228, 217, 385, 366, 715, 10,
  98,  48, 91, 88,165,157, 148,261, 248, 407, 397, 372, 380, 889, 884,  8,
  85,  84, 81,159,156,143, 260,249, 427, 401, 392, 383, 727, 713, 708,  7,
 154,  76, 73,141,131,256, 245,426, 406, 394, 384, 735, 359, 710, 352, 11,
 139, 129, 67,125,247,233, 229,219, 393, 743, 737, 720, 885, 882, 439,  4,
 243, 120,118,115,227,223, 396,746, 742, 736, 721, 712, 706, 223, 436,  6,
 202, 224,222,218,216,389, 386,381, 364, 888, 443, 707, 440, 437,1728,  4,
 747, 211,210,208,370, 379,734,723, 714,1735, 883, 877, 876,3459, 865,  2,
 377, 369,102,187, 726,722,358,711, 709, 866,1734, 871,3458, 870, 434,  0,
  12,  10,  7, 11,  10, 17, 11,  9,  13,  12,  10,   7,   5,   3,   1,  3};

static HUFFBITS      t24HB[]   = {
   15, 13, 46, 80, 146, 262, 248, 434, 426, 669, 653, 649, 621, 517, 1032, 88,
   14, 12, 21, 38,  71, 130, 122, 216, 209, 198, 327, 345, 319, 297,  279, 42,
   47, 22, 41, 74,  68, 128, 120, 221, 207, 194, 182, 340, 315, 295,  541, 18,
   81, 39, 75, 70, 134, 125, 116, 220, 204, 190, 178, 325, 311, 293,  271, 16,
  147, 72, 69,135, 127, 118, 112, 210, 200, 188, 352, 323, 306, 285,  540, 14,
  263, 66,129,126, 119, 114, 214, 202, 192, 180, 341, 317, 301, 281,  262, 12,
  249,123,121,117, 113, 215, 206, 195, 185, 347, 330, 308, 291, 272,  520, 10,
  435,115,111,109, 211, 203, 196, 187, 353, 332, 313, 298, 283, 531,  381, 17,
  427,212,208,205, 201, 193, 186, 177, 169, 320, 303, 286, 268, 514,  377, 16,
  335,199,197,191, 189, 181, 174, 333, 321, 305, 289, 275, 521, 379,  371, 11,
  668,184,183,179, 175, 344, 331, 314, 304, 290, 277, 530, 383, 373,  366, 10,
  652,346,171,168, 164, 318, 309, 299, 287, 276, 263, 513, 375, 368,  362,  6,
  648,322,316,312, 307, 302, 292, 284, 269, 261, 512, 376, 370, 364,  359,  4,
  620,300,296,294, 288, 282, 273, 266, 515, 380, 374, 369, 365, 361,  357,  2,
 1033,280,278,274, 267, 264, 259, 382, 378, 372, 367, 363, 360, 358,  356,  0,
   43, 20, 19, 17,  15,  13,  11,   9,   7,   6,   4,   7,   5,   3,    1,  3};

static HUFFBITS      t32HB[]   = {
  1, 5, 4, 5, 6, 5, 4, 4, 7, 3, 6, 0, 7, 2, 3, 1};
static HUFFBITS      t33HB[]   = {
  15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0};

static unsigned char t1l[]  = {
  1, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  2, 3};

static unsigned char t2l[]  = {
  1, 3, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  3, 3, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  5, 5, 6};

static unsigned char t3l[]  = {
  2, 2, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  3, 2, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  5, 5, 6};

static unsigned char t5l[]  = {
  1, 3, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  3, 3, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  6, 6, 7, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  7, 6, 7, 8};

static unsigned char t6l[]  = {
  3, 3, 5, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  3, 2, 4, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  4, 4, 5, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  6, 5, 6, 7};

static unsigned char t7l[]  = {
  1, 3, 6, 8, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  3, 4, 6, 7, 7, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  6, 5, 7, 8, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  7, 7, 8, 9, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  7, 7, 8, 9, 9,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  8, 8, 9,10,10,10};

static unsigned char t8l[]  = {
  2, 3, 6, 8, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  3, 2, 4, 8, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  6, 4, 6, 8, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  8, 8, 8, 9, 9,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  8, 7, 8, 9,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  9, 8, 9, 9,11,11};

static unsigned char t9l[]  = {
  3, 3, 5, 6, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  3, 3, 4, 5, 6, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  4, 4, 5, 6, 7, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  6, 5, 6, 7, 7, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  7, 6, 7, 7, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  8, 7, 8, 8, 9, 9};

static unsigned char t10l[]  = {
  1, 3, 6, 8, 9, 9, 9, 10, 0, 0, 0, 0, 0, 0, 0, 0,
  3, 4, 6, 7, 8, 9, 8,  8, 0, 0, 0, 0, 0, 0, 0, 0,
  6, 6, 7, 8, 9,10, 9,  9, 0, 0, 0, 0, 0, 0, 0, 0,
  7, 7, 8, 9,10,10, 9, 10, 0, 0, 0, 0, 0, 0, 0, 0,
  8, 8, 9,10,10,10,10, 10, 0, 0, 0, 0, 0, 0, 0, 0,
  9, 9,10,10,11,11,10, 11, 0, 0, 0, 0, 0, 0, 0, 0,
  8, 8, 9,10,10,10,11, 11, 0, 0, 0, 0, 0, 0, 0, 0,
  9, 8, 9,10,10,11,11, 11};

static unsigned char t11l[]  = {
  2, 3, 5, 7, 8,  9,  8,  9, 0, 0, 0, 0, 0, 0, 0, 0,
  3, 3, 4, 6, 8,  8,  7,  8, 0, 0, 0, 0, 0, 0, 0, 0,
  5, 5, 6, 7, 8,  9,  8,  8, 0, 0, 0, 0, 0, 0, 0, 0,
  7, 6, 7, 9, 8, 10,  8,  9, 0, 0, 0, 0, 0, 0, 0, 0,
  8, 8, 8, 9, 9, 10,  9, 10, 0, 0, 0, 0, 0, 0, 0, 0,
  8, 8, 9,10,10, 11, 10, 11, 0, 0, 0, 0, 0, 0, 0, 0,
  8, 7, 7, 8, 9, 10, 10, 10, 0, 0, 0, 0, 0, 0, 0, 0,
  8, 7, 8, 9,10, 10, 10, 10};

static unsigned char t12l[]  = {
  4, 3, 5, 7, 8, 9, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0,
  3, 3, 4, 5, 7, 7, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0,
  5, 4, 5, 6, 7, 8, 7, 8, 0, 0, 0, 0, 0, 0, 0, 0,
  6, 5, 6, 6, 7, 8, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0,
  7, 6, 7, 7, 8, 8, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0,
  8, 7, 8, 8, 8, 9, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0,
  8, 7, 7, 8, 8, 9, 9,10, 0, 0, 0, 0, 0, 0, 0, 0,
  9, 8, 8, 9, 9, 9, 9,10};

static unsigned char t13l[]  = {
  1,  4,  6,  7,  8,  9,  9, 10,  9, 10, 11, 11, 12, 12, 13, 13,
  3,  4,  6,  7,  8,  8,  9,  9,  9,  9, 10, 10, 11, 12, 12, 12,
  6,  6,  7,  8,  9,  9, 10, 10,  9, 10, 10, 11, 11, 12, 13, 13,
  7,  7,  8,  9,  9, 10, 10, 10, 10, 11, 11, 11, 11, 12, 13, 13,
  8,  7,  9,  9, 10, 10, 11, 11, 10, 11, 11, 12, 12, 13, 13, 14,
  9,  8,  9, 10, 10, 10, 11, 11, 11, 11, 12, 11, 13, 13, 14, 14,
  9,  9, 10, 10, 11, 11, 11, 11, 11, 12, 12, 12, 13, 13, 14, 14,
 10,  9, 10, 11, 11, 11, 12, 12, 12, 12, 13, 13, 13, 14, 16, 16,
  9,  8,  9, 10, 10, 11, 11, 12, 12, 12, 12, 13, 13, 14, 15, 15,
 10,  9, 10, 10, 11, 11, 11, 13, 12, 13, 13, 14, 14, 14, 16, 15,
 10, 10, 10, 11, 11, 12, 12, 13, 12, 13, 14, 13, 14, 15, 16, 17,
 11, 10, 10, 11, 12, 12, 12, 12, 13, 13, 13, 14, 15, 15, 15, 16,
 11, 11, 11, 12, 12, 13, 12, 13, 14, 14, 15, 15, 15, 16, 16, 16,
 12, 11, 12, 13, 13, 13, 14, 14, 14, 14, 14, 15, 16, 15, 16, 16,
 13, 12, 12, 13, 13, 13, 15, 14, 14, 17, 15, 15, 15, 17, 16, 16,
 12, 12, 13, 14, 14, 14, 15, 14, 15, 15, 16, 16, 19, 18, 19, 16}; 

static unsigned char t15l[]  = {
  3,  4,  5,  7,  7,  8,  9,  9,  9, 10, 10, 11, 11, 11, 12, 13,
  4,  3,  5,  6,  7,  7,  8,  8,  8,  9,  9, 10, 10, 10, 11, 11,
  5,  5,  5,  6,  7,  7,  8,  8,  8,  9,  9, 10, 10, 11, 11, 11,
  6,  6,  6,  7,  7,  8,  8,  9,  9,  9, 10, 10, 10, 11, 11, 11,
  7,  6,  7,  7,  8,  8,  9,  9,  9,  9, 10, 10, 10, 11, 11, 11,
  8,  7,  7,  8,  8,  8,  9,  9,  9,  9, 10, 10, 11, 11, 11, 12,
  9,  7,  8,  8,  8,  9,  9,  9,  9, 10, 10, 10, 11, 11, 12, 12,
  9,  8,  8,  9,  9,  9,  9, 10, 10, 10, 10, 10, 11, 11, 11, 12,
  9,  8,  8,  9,  9,  9,  9, 10, 10, 10, 10, 11, 11, 12, 12, 12,
  9,  8,  9,  9,  9,  9, 10, 10, 10, 11, 11, 11, 11, 12, 12, 12,
 10,  9,  9,  9, 10, 10, 10, 10, 10, 11, 11, 11, 11, 12, 13, 12,
 10,  9,  9,  9, 10, 10, 10, 10, 11, 11, 11, 11, 12, 12, 12, 13,
 11, 10,  9, 10, 10, 10, 11, 11, 11, 11, 11, 11, 12, 12, 13, 13,
 11, 10, 10, 10, 10, 11, 11, 11, 11, 12, 12, 12, 12, 12, 13, 13,
 12, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 13, 13, 12, 13,
 12, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 13, 13, 13, 13};

static unsigned char t16l[]  = {
  1,  4,  6,  8,  9,  9, 10, 10, 11, 11, 11, 12, 12, 12, 13,  9,
  3,  4,  6,  7,  8,  9,  9,  9, 10, 10, 10, 11, 12, 11, 12,  8,
  6,  6,  7,  8,  9,  9, 10, 10, 11, 10, 11, 11, 11, 12, 12,  9,
  8,  7,  8,  9,  9, 10, 10, 10, 11, 11, 12, 12, 12, 13, 13, 10,
  9,  8,  9,  9, 10, 10, 11, 11, 11, 12, 12, 12, 13, 13, 13,  9,
  9,  8,  9,  9, 10, 11, 11, 12, 11, 12, 12, 13, 13, 13, 14, 10,
 10,  9,  9, 10, 11, 11, 11, 11, 12, 12, 12, 12, 13, 13, 14, 10,
 10,  9, 10, 10, 11, 11, 11, 12, 12, 13, 13, 13, 13, 15, 15, 10,
 10, 10, 10, 11, 11, 11, 12, 12, 13, 13, 13, 13, 14, 14, 14, 10,
 11, 10, 10, 11, 11, 12, 12, 13, 13, 13, 13, 14, 13, 14, 13, 11,
 11, 11, 10, 11, 12, 12, 12, 12, 13, 14, 14, 14, 15, 15, 14, 10,
 12, 11, 11, 11, 12, 12, 13, 14, 14, 14, 14, 14, 14, 13, 14, 11,
 12, 12, 12, 12, 12, 13, 13, 13, 13, 15, 14, 14, 14, 14, 16, 11,
 14, 12, 12, 12, 13, 13, 14, 14, 14, 16, 15, 15, 15, 17, 15, 11,
 13, 13, 11, 12, 14, 14, 13, 14, 14, 15, 16, 15, 17, 15, 14, 11,
  9,  8,  8,  9,  9, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 8};

static unsigned char t24l[]  = {
  4,  4,  6,  7,  8,  9,  9, 10, 10, 11, 11, 11, 11, 11, 12,  9,
  4,  4,  5,  6,  7,  8,  8,  9,  9,  9, 10, 10, 10, 10, 10,  8,
  6,  5,  6,  7,  7,  8,  8,  9,  9,  9,  9, 10, 10, 10, 11,  7,
  7,  6,  7,  7,  8,  8,  8,  9,  9,  9,  9, 10, 10, 10, 10,  7,
  8,  7,  7,  8,  8,  8,  8,  9,  9,  9, 10, 10, 10, 10, 11,  7,
  9,  7,  8,  8,  8,  8,  9,  9,  9,  9, 10, 10, 10, 10, 10,  7,
  9,  8,  8,  8,  8,  9,  9,  9,  9, 10, 10, 10, 10, 10, 11,  7,
 10,  8,  8,  8,  9,  9,  9,  9, 10, 10, 10, 10, 10, 11, 11,  8,
 10,  9,  9,  9,  9,  9,  9,  9,  9, 10, 10, 10, 10, 11, 11,  8,
 10,  9,  9,  9,  9,  9,  9, 10, 10, 10, 10, 10, 11, 11, 11,  8,
 11,  9,  9,  9,  9, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11,  8,
 11, 10,  9,  9,  9, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11,  8,
 11, 10, 10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11,  8,
 11, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11,  8,
 12, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11,  8,
  8,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  8,  8,  8,  8,  4};

static unsigned char t32l[]  = {
  1, 4, 4, 5, 4, 6, 5, 6, 4, 5, 5, 6, 5, 6, 6, 6};
static unsigned char t33l[]  = {
  4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4};

struct huffcodetab ht[HTN] =
{
  /* xlen, linmax, table, hlen */
  { 0,   0,NULL,NULL},
  { 2,   0,t1HB, t1l},
  { 3,   0,t2HB, t2l},
  { 3,   0,t3HB, t3l},
  { 0,   0,NULL,NULL},/* Apparently not used */
  { 4,   0,t5HB, t5l},
  { 4,   0,t6HB, t6l},
  { 6,   0,t7HB, t7l},
  { 6,   0,t8HB, t8l},
  { 6,   0,t9HB, t9l},
  { 8,   0,t10HB, t10l},
  { 8,   0,t11HB, t11l},
  { 8,   0,t12HB, t12l},
  {16,   0,t13HB, t13l},
  { 0,   0,NULL,NULL},/* Apparently not used */
  {16,   0,t15HB, t15l},

  { 1,   1,t16HB, t16l},
  { 2,   3,t16HB, t16l},
  { 3,   7,t16HB, t16l},
  { 4,  15,t16HB, t16l},
  { 6,  63,t16HB, t16l},
  { 8, 255,t16HB, t16l},
  {10,1023,t16HB, t16l},
  {13,8191,t16HB, t16l},

  { 4,  15,t24HB, t24l},
  { 5,  31,t24HB, t24l},
  { 6,  63,t24HB, t24l},
  { 7, 127,t24HB, t24l},
  { 8, 255,t24HB, t24l},
  { 9, 511,t24HB, t24l},
  {11,2047,t24HB, t24l},
  {13,8191,t24HB, t24l},

  { 0,   0,t32HB, t32l},
  { 0,   0,t33HB, t33l},
};	





FLOAT8 psy_data[] =
{48000.0, 61,
 0, 1, 24.5, 4.532, 0.970, 0.000,
 1, 1, 24.5, 4.532, 0.755, 0.469,
 2, 1, 24.5, 4.532, 0.738, 0.938,
 3, 1, 24.5, 0.904, 0.730, 1.406,
 4, 1, 24.5, 0.904, 0.724, 1.875,
 5, 1, 20.0, 0.090, 0.723, 2.344,
 6, 1, 20.0, 0.090, 0.723, 2.813,
 7, 1, 20.0, 0.029, 0.723, 3.281,
 8, 1, 20.0, 0.029, 0.718, 3.750,
 9, 1, 20.0, 0.009, 0.690, 4.199,
 10, 1, 20.0, 0.009, 0.660, 4.625,
 11, 1, 18.0, 0.009, 0.641, 5.047,
 12, 1, 18.0, 0.009, 0.600, 5.438,
 13, 1, 18.0, 0.009, 0.584, 5.828,
 14, 1, 12.0, 0.009, 0.532, 6.188,
 15, 1, 12.0, 0.009, 0.537, 6.522,
 16, 2, 6.0, 0.018, 0.857, 7.174,
 17, 2, 6.0, 0.018, 0.858, 7.801,
 18, 2, 3.0, 0.018, 0.853, 8.402,
 19, 2, 3.0, 0.018, 0.824, 8.966,
 20, 2, 3.0, 0.018, 0.778, 9.484,
 21, 2, 3.0, 0.018, 0.740, 9.966,
 22, 2, 0.0, 0.018, 0.709, 10.426,
 23, 2, 0.0, 0.018, 0.676, 10.866,
 24, 2, 0.0, 0.018, 0.632, 11.279,
 25, 2, 0.0, 0.018, 0.592, 11.669,
 26, 2, 0.0, 0.018, 0.553, 12.042,
 27, 2, 0.0, 0.018, 0.510, 12.386,
 28, 2, 0.0, 0.018, 0.513, 12.721,
 29, 3, 0.0, 0.027, 0.608, 13.115,
 30, 3, 0.0, 0.027, 0.673, 13.562,
 31, 3, 0.0, 0.027, 0.637, 13.984,
 32, 3, 0.0, 0.027, 0.586, 14.371,
 33, 3, 0.0, 0.027, 0.571, 14.741,
 34, 4, 0.0, 0.036, 0.616, 15.140,
 35, 4, 0.0, 0.036, 0.640, 15.563,
 36, 4, 0.0, 0.036, 0.598, 15.962,
 37, 4, 0.0, 0.036, 0.538, 16.324,
 38, 4, 0.0, 0.036, 0.512, 16.665,
 39, 5, 0.0, 0.045, 0.528, 17.020,
 40, 5, 0.0, 0.045, 0.517, 17.373,
 41, 5, 0.0, 0.045, 0.493, 17.708,
 42, 6, 0.0, 0.054, 0.499, 18.045,
 43, 7, 0.0, 0.063, 0.525, 18.398,
 44, 7, 0.0, 0.063, 0.541, 18.762,
 45, 8, 0.0, 0.072, 0.528, 19.120,
 46, 8, 0.0, 0.072, 0.510, 19.466,
 47, 8, 0.0, 0.072, 0.506, 19.807,
 48, 10, 0.0, 0.180, 0.525, 20.159,
 49, 10, 0.0, 0.180, 0.536, 20.522,
 50, 10, 0.0, 0.180, 0.518, 20.874,
 51, 13, 0.0, 0.372, 0.501, 21.214,
 52, 13, 0.0, 0.372, 0.497, 21.553,
 53, 14, 0.0, 0.400, 0.497, 21.892,
 54, 18, 0.0, 1.627, 0.495, 22.231,
 55, 18, 0.0, 1.627, 0.494, 22.569,
 56, 20, 0.0, 1.808, 0.497, 22.909,
 57, 25, 0.0, 22.607, 0.494, 23.248,
 58, 25, 0.0, 22.607, 0.487, 23.583,
 59, 35, 0.0, 31.650, 0.483, 23.915,
 60, 67, 0.0, 605.867, 0.482, 24.246,
 61, 67, 0.0, 605.867, 0.524, 24.576,
 44100.0, 62,
 0, 1, 24.5, 4.532, 0.951, 0.000,
 1, 1, 24.5, 4.532, 0.700, 0.431,
 2, 1, 24.5, 4.532, 0.681, 0.861,
 3, 1, 24.5, 0.904, 0.675, 1.292,
 4, 1, 24.5, 0.904, 0.667, 1.723,
 5, 1, 20.0, 0.090, 0.665, 2.153,
 6, 1, 20.0, 0.090, 0.664, 2.584,
 7, 1, 20.0, 0.029, 0.664, 3.015,
 8, 1, 20.0, 0.029, 0.664, 3.445,
 9, 1, 20.0, 0.029, 0.655, 3.876,
 10, 1, 20.0, 0.009, 0.616, 4.279,
 11, 1, 20.0, 0.009, 0.597, 4.670,
 12, 1, 18.0, 0.009, 0.578, 5.057,
 13, 1, 18.0, 0.009, 0.541, 5.416,
 14, 1, 18.0, 0.009, 0.575, 5.774,
 15, 2, 12.0, 0.018, 0.856, 6.422,
 16, 2, 6.0, 0.018, 0.846, 7.026,
 17, 2, 6.0, 0.018, 0.840, 7.609,
 18, 2, 3.0, 0.018, 0.822, 8.168,
 19, 2, 3.0, 0.018, 0.800, 8.710,
 20, 2, 3.0, 0.018, 0.753, 9.207,
 21, 2, 3.0, 0.018, 0.704, 9.662,
 22, 2, 0.0, 0.018, 0.674, 10.099,
 23, 2, 0.0, 0.018, 0.640, 10.515,
 24, 2, 0.0, 0.018, 0.609, 10.917,
 25, 2, 0.0, 0.018, 0.566, 11.293,
 26, 2, 0.0, 0.018, 0.535, 11.652,
 27, 2, 0.0, 0.018, 0.531, 11.997,
 28, 3, 0.0, 0.027, 0.615, 12.394,
 29, 3, 0.0, 0.027, 0.686, 12.850,
 30, 3, 0.0, 0.027, 0.650, 13.277,
 31, 3, 0.0, 0.027, 0.612, 13.681,
 32, 3, 0.0, 0.027, 0.567, 14.062,
 33, 3, 0.0, 0.027, 0.520, 14.411,
 34, 3, 0.0, 0.027, 0.513, 14.751,
 35, 4, 0.0, 0.036, 0.557, 15.119,
 36, 4, 0.0, 0.036, 0.584, 15.508,
 37, 4, 0.0, 0.036, 0.570, 15.883,
 38, 5, 0.0, 0.045, 0.579, 16.263,
 39, 5, 0.0, 0.045, 0.585, 16.654,
 40, 5, 0.0, 0.045, 0.548, 17.020,
 41, 6, 0.0, 0.054, 0.536, 17.374,
 42, 6, 0.0, 0.054, 0.550, 17.744,
 43, 7, 0.0, 0.063, 0.532, 18.104,
 44, 7, 0.0, 0.063, 0.504, 18.447,
 45, 7, 0.0, 0.063, 0.496, 18.782,
 46, 9, 0.0, 0.081, 0.517, 19.130,
 47, 9, 0.0, 0.081, 0.527, 19.487,
 48, 9, 0.0, 0.081, 0.516, 19.838,
 49, 10, 0.0, 0.180, 0.497, 20.179,
 50, 10, 0.0, 0.180, 0.489, 20.510,
 51, 11, 0.0, 0.198, 0.502, 20.852,
 52, 14, 0.0, 0.400, 0.501, 21.196,
 53, 14, 0.0, 0.400, 0.491, 21.531,
 54, 15, 0.0, 0.429, 0.497, 21.870,
 55, 20, 0.0, 1.808, 0.504, 22.214,
 56, 20, 0.0, 1.808, 0.504, 22.558,
 57, 21, 0.0, 1.898, 0.495, 22.898,
 58, 27, 0.0, 24.416, 0.486, 23.232,
 59, 27, 0.0, 24.416, 0.484, 23.564,
 60, 36, 0.0, 32.554, 0.483, 23.897,
 61, 73, 0.0, 660.124, 0.475, 24.229,
 62, 18, 0.0, 162.770, 0.515, 24.442,
 32000.0, 58,
 0, 2, 24.5, 4.532, 0.997, 0.313,
 1, 2, 24.5, 4.532, 0.893, 0.938,
 2, 2, 24.5, 1.809, 0.881, 1.563,
 3, 2, 20.0, 0.181, 0.873, 2.188,
 4, 2, 20.0, 0.181, 0.872, 2.813,
 5, 2, 20.0, 0.057, 0.871, 3.438,
 6, 2, 20.0, 0.018, 0.860, 4.045,
 7, 2, 20.0, 0.018, 0.839, 4.625,
 8, 2, 18.0, 0.018, 0.812, 5.173,
 9, 2, 18.0, 0.018, 0.784, 5.698,
 10, 2, 12.0, 0.018, 0.741, 6.185,
 11, 2, 12.0, 0.018, 0.697, 6.634,
 12, 2, 6.0, 0.018, 0.674, 7.070,
 13, 2, 6.0, 0.018, 0.651, 7.492,
 14, 2, 6.0, 0.018, 0.633, 7.905,
 15, 2, 3.0, 0.018, 0.611, 8.305,
 16, 2, 3.0, 0.018, 0.589, 8.695,
 17, 2, 3.0, 0.018, 0.575, 9.064,
 18, 3, 3.0, 0.027, 0.654, 9.484,
 19, 3, 3.0, 0.027, 0.724, 9.966,
 20, 3, 0.0, 0.027, 0.701, 10.426,
 21, 3, 0.0, 0.027, 0.673, 10.866,
 22, 3, 0.0, 0.027, 0.631, 11.279,
 23, 3, 0.0, 0.027, 0.592, 11.669,
 24, 3, 0.0, 0.027, 0.553, 12.042,
 25, 3, 0.0, 0.027, 0.510, 12.386,
 26, 3, 0.0, 0.027, 0.506, 12.721,
 27, 4, 0.0, 0.036, 0.562, 13.091,
 28, 4, 0.0, 0.036, 0.598, 13.488,
 29, 4, 0.0, 0.036, 0.589, 13.873,
 30, 5, 0.0, 0.045, 0.607, 14.268,
 31, 5, 0.0, 0.045, 0.620, 14.679,
 32, 5, 0.0, 0.045, 0.580, 15.067,
 33, 5, 0.0, 0.045, 0.532, 15.424,
 34, 5, 0.0, 0.045, 0.517, 15.771,
 35, 6, 0.0, 0.054, 0.517, 16.120,
 36, 6, 0.0, 0.054, 0.509, 16.466,
 37, 6, 0.0, 0.054, 0.506, 16.807,
 38, 8, 0.0, 0.072, 0.522, 17.158,
 39, 8, 0.0, 0.072, 0.531, 17.518,
 40, 8, 0.0, 0.072, 0.519, 17.869,
 41, 10, 0.0, 0.090, 0.512, 18.215,
 42, 10, 0.0, 0.090, 0.509, 18.563,
 43, 10, 0.0, 0.090, 0.498, 18.902,
 44, 12, 0.0, 0.109, 0.494, 19.239,
 45, 12, 0.0, 0.109, 0.501, 19.580,
 46, 13, 0.0, 0.118, 0.508, 19.925,
 47, 14, 0.0, 0.252, 0.502, 20.269,
 48, 14, 0.0, 0.252, 0.493, 20.606,
 49, 16, 0.0, 0.288, 0.497, 20.944,
 50, 20, 0.0, 0.572, 0.506, 21.288,
 51, 20, 0.0, 0.572, 0.510, 21.635,
 52, 23, 0.0, 0.658, 0.504, 21.980,
 53, 27, 0.0, 2.441, 0.496, 22.319,
 54, 27, 0.0, 2.441, 0.493, 22.656,
 55, 32, 0.0, 2.893, 0.490, 22.993,
 56, 37, 0.0, 33.458, 0.482, 23.326,
 57, 37, 0.0, 33.458, 0.458, 23.656,
 58, 12, 0.0, 10.851, 0.500, 23.937,
 24000, 59,
 0, 2, 15, 17.8250179, 0.697374165, 0.236874461,
 1, 2, 15, 17.8250179, 0.455024809, 0.71016103,
 2, 2, 15, 1.78250182, 0.431440443, 1.18193281,
 3, 2, 15, 1.78250182, 0.42391625, 1.65102732,
 4, 2, 13, 0.178250194, 0.418206781, 2.11632562,
 5, 2, 13, 0.178250194, 0.41158545, 2.57676744,
 6, 2, 13, 0.0563676581, 0.405409157, 3.03136396,
 7, 2, 13, 0.0563676581, 0.399695486, 3.47920918,
 8, 2, 13, 0.0563676581, 0.393753231, 3.91948748,
 9, 2, 12, 0.0178250186, 0.387357473, 4.35147953,
 10, 2, 12, 0.0178250186, 0.38045457, 4.77456427,
 11, 2, 10, 0.0178250186, 0.373053908, 5.18822002,
 12, 2, 10, 0.0178250186, 0.365188122, 5.59202194,
 13, 2, 10, 0.0178250186, 0.356897771, 5.98564005,
 14, 2, 9, 0.0178250186, 0.348700613, 6.36883163,
 15, 2, 9, 0.0178250186, 0.340260029, 6.74143791,
 16, 2, 6, 0.0178250186, 0.332341045, 7.10337448,
 17, 2, 6, 0.0178250186, 0.330462843, 7.45462418,
 18, 2, 6, 0.0178250186, 0.345568359, 7.79523182,
 19, 3, 3, 0.0267375279, 0.377859652, 8.20455742,
 20, 3, 3, 0.0267375279, 0.396689415, 8.67640114,
 21, 3, 3, 0.0267375279, 0.391237885, 9.12561035,
 22, 3, 3, 0.0267375279, 0.37761277, 9.55298138,
 23, 3, 3, 0.0267375279, 0.362836808, 9.95940971,
 24, 3, 0, 0.0267375279, 0.349010617, 10.3458519,
 25, 3, 0, 0.0267375279, 0.339673489, 10.7132998,
 26, 3, 0, 0.0267375279, 0.343845725, 11.0627575,
 27, 4, 0, 0.0356500372, 0.355822682, 11.447506,
 28, 4, 0, 0.0356500372, 0.358104348, 11.8627586,
 29, 4, 0, 0.0356500372, 0.34745428, 12.2520256,
 30, 4, 0, 0.0356500372, 0.334927917, 12.6173973,
 31, 4, 0, 0.0356500372, 0.331643254, 12.9608269,
 32, 5, 0, 0.0445625484, 0.333368897, 13.3219252,
 33, 5, 0, 0.0445625484, 0.332313001, 13.6976833,
 34, 5, 0, 0.0445625484, 0.3314417, 14.047802,
 35, 6, 0, 0.0534750558, 0.330947191, 14.405302,
 36, 6, 0, 0.0534750558, 0.332477689, 14.7684803,
 37, 7, 0, 0.062387567, 0.332647532, 15.1315956,
 38, 7, 0, 0.062387567, 0.330841452, 15.4940481,
 39, 8, 0, 0.0713000745, 0.327769846, 15.8516159,
 40, 8, 0, 0.0713000745, 0.324572712, 16.204628,
 41, 9, 0, 0.0802125856, 0.323825002, 16.5502281,
 42, 10, 0, 0.0891250968, 0.321414798, 16.9067478,
 43, 10, 0, 0.0891250968, 0.318189293, 17.2537231,
 44, 11, 0, 0.0980376005, 0.315934151, 17.5901108,
 45, 12, 0, 0.106950112, 0.315639287, 17.931406,
 46, 13, 0, 0.115862623, 0.316569835, 18.2750721,
 47, 14, 0, 0.124775134, 0.31656, 18.6191597,
 48, 15, 0, 0.133687645, 0.315465957, 18.9621754,
 49, 16, 0, 0.142600149, 0.313576341, 19.3029613,
 50, 17, 0, 0.151512653, 0.311635971, 19.6405869,
 51, 18, 0, 0.160425171, 0.311066717, 19.9742699,
 52, 20, 0, 0.355655879, 0.311465651, 20.3115921,
 53, 21, 0, 0.373438686, 0.311872005, 20.6507797,
 54, 23, 0, 0.409004271, 0.311015964, 20.9890823,
 55, 24, 0, 0.676411927, 0.309207708, 21.3251152,
 56, 26, 0, 0.732779562, 0.3081128, 21.6565971,
 57, 28, 0, 0.789147198, 0.310006589, 21.9881554,
 58, 31, 0, 2.76287794, 0.327113092, 22.3222847,
 59, 34, 0, 3.03025317, 0.416082352, 22.6605186,
 22050, 59,
 0, 2, 15, 17.8250179, 0.658683598, 0.217637643,
 1, 2, 15, 17.8250179, 0.432554901, 0.652563453,
 2, 2, 15, 1.78250182, 0.405113578, 1.08633137,
 3, 2, 15, 1.78250182, 0.397231787, 1.51803517,
 4, 2, 15, 1.78250182, 0.392088681, 1.94679713,
 5, 2, 13, 0.178250194, 0.386788279, 2.37177849,
 6, 2, 13, 0.178250194, 0.380574644, 2.79218864,
 7, 2, 13, 0.0563676581, 0.375309765, 3.20729256,
 8, 2, 13, 0.0563676581, 0.370087624, 3.61641645,
 9, 2, 12, 0.0178250186, 0.364568561, 4.01895428,
 10, 2, 12, 0.0178250186, 0.358959526, 4.4143672,
 11, 2, 12, 0.0178250186, 0.352938265, 4.80218887,
 12, 2, 10, 0.0178250186, 0.3465029, 5.18202305,
 13, 2, 10, 0.0178250186, 0.33968094, 5.55354261,
 14, 2, 10, 0.0178250186, 0.332571507, 5.91648674,
 15, 2, 9, 0.0178250186, 0.326015651, 6.27065945,
 16, 2, 9, 0.0178250186, 0.325442046, 6.61592293,
 17, 2, 9, 0.0178250186, 0.341315031, 6.95219517,
 18, 3, 6, 0.0267375279, 0.374984443, 7.3584404,
 19, 3, 6, 0.0267375279, 0.396138102, 7.8290925,
 20, 3, 3, 0.0267375279, 0.39271906, 8.27975655,
 21, 3, 3, 0.0267375279, 0.380755007, 8.71083069,
 22, 3, 3, 0.0267375279, 0.367386311, 9.12284088,
 23, 3, 3, 0.0267375279, 0.354351997, 9.51640987,
 24, 3, 3, 0.0267375279, 0.341508389, 9.89222908,
 25, 3, 0, 0.0267375279, 0.333577901, 10.2510386,
 26, 3, 0, 0.0267375279, 0.338108748, 10.5936022,
 27, 4, 0, 0.0356500372, 0.350744486, 10.9723492,
 28, 4, 0, 0.0356500372, 0.354519457, 11.38272,
 29, 4, 0, 0.0356500372, 0.345274031, 11.7689981,
 30, 4, 0, 0.0356500372, 0.333828837, 12.1329184,
 31, 4, 0, 0.0356500372, 0.331436664, 12.4761295,
 32, 5, 0, 0.0445625484, 0.334172577, 12.8381901,
 33, 5, 0, 0.0445625484, 0.334024847, 13.2160273,
 34, 5, 0, 0.0445625484, 0.33392629, 13.5690479,
 35, 6, 0, 0.0534750558, 0.334218502, 13.9303951,
 36, 6, 0, 0.0534750558, 0.336405039, 14.298193,
 37, 7, 0, 0.062387567, 0.337080389, 14.666563,
 38, 7, 0, 0.062387567, 0.335603535, 15.0346909,
 39, 8, 0, 0.0713000745, 0.332515866, 15.398139,
 40, 8, 0, 0.0713000745, 0.327727586, 15.7570457,
 41, 9, 0, 0.0802125856, 0.322346836, 16.1083431,
 42, 9, 0, 0.0802125856, 0.317575186, 16.4528522,
 43, 10, 0, 0.0891250968, 0.31632933, 16.7886105,
 44, 11, 0, 0.0980376005, 0.317602783, 17.132,
 45, 12, 0, 0.106950112, 0.319945186, 17.4796028,
 46, 13, 0, 0.115862623, 0.320881754, 17.8287659,
 47, 14, 0, 0.124775134, 0.320346534, 18.1774921,
 48, 15, 0, 0.133687645, 0.318628669, 18.5243168,
 49, 16, 0, 0.142600149, 0.316125751, 18.8681736,
 50, 17, 0, 0.151512653, 0.313746184, 19.2082729,
 51, 18, 0, 0.160425171, 0.312971771, 19.5440025,
 52, 20, 0, 0.178250194, 0.313278913, 19.8831882,
 53, 21, 0, 0.373438686, 0.313735574, 20.224247,
 54, 23, 0, 0.409004271, 0.31308493, 20.5646286,
 55, 24, 0, 0.426787049, 0.31156227, 20.903141,
 56, 26, 0, 0.732779562, 0.310435742, 21.2376747,
 57, 28, 0, 0.789147198, 0.31132248, 21.5730591,
 58, 30, 0, 0.845514894, 0.32730341, 21.9066811,
 59, 33, 0, 2.94112802, 0.414659739, 22.2411156,
 16000, 55,
 0, 3, 15, 26.7375278, 0.697374165, 0.236874461,
 1, 3, 15, 26.7375278, 0.455024809, 0.71016103,
 2, 3, 15, 2.67375278, 0.431440443, 1.18193281,
 3, 3, 15, 2.67375278, 0.42391625, 1.65102732,
 4, 3, 13, 0.26737529, 0.418206781, 2.11632562,
 5, 3, 13, 0.26737529, 0.41158545, 2.57676744,
 6, 3, 13, 0.0845514908, 0.405409157, 3.03136396,
 7, 3, 13, 0.0845514908, 0.399695486, 3.47920918,
 8, 3, 13, 0.0845514908, 0.393753231, 3.91948748,
 9, 3, 12, 0.0267375279, 0.387357473, 4.35147953,
 10, 3, 12, 0.0267375279, 0.38045457, 4.77456427,
 11, 3, 10, 0.0267375279, 0.373053908, 5.18822002,
 12, 3, 10, 0.0267375279, 0.365188122, 5.59202194,
 13, 3, 10, 0.0267375279, 0.356897742, 5.98564005,
 14, 3, 9, 0.0267375279, 0.34869957, 6.36883163,
 15, 3, 9, 0.0267375279, 0.340241522, 6.74143791,
 16, 3, 6, 0.0267375279, 0.332089454, 7.10337448,
 17, 3, 6, 0.0267375279, 0.328292668, 7.45462418,
 18, 3, 6, 0.0267375279, 0.336574793, 7.79523182,
 19, 4, 3, 0.0356500372, 0.354600489, 8.17827797,
 20, 4, 3, 0.0356500372, 0.364343345, 8.59994984,
 21, 4, 3, 0.0356500372, 0.359369367, 9.00363636,
 22, 4, 3, 0.0356500372, 0.347775847, 9.38988018,
 23, 4, 3, 0.0356500372, 0.335562587, 9.7592926,
 24, 4, 0, 0.0356500372, 0.326988578, 10.1125278,
 25, 4, 0, 0.0356500372, 0.327966213, 10.4502735,
 26, 5, 0, 0.0445625484, 0.334450752, 10.811614,
 27, 5, 0, 0.0445625484, 0.335228145, 11.1935263,
 28, 5, 0, 0.0445625484, 0.329595625, 11.5549288,
 29, 5, 0, 0.0445625484, 0.326683223, 11.8971443,
 30, 6, 0, 0.0534750558, 0.326986551, 12.2520256,
 31, 6, 0, 0.0534750558, 0.325072199, 12.6173973,
 32, 6, 0, 0.0534750558, 0.323560268, 12.9608269,
 33, 7, 0, 0.062387567, 0.322494298, 13.3093863,
 34, 7, 0, 0.062387567, 0.323403448, 13.6617231,
 35, 8, 0, 0.0713000745, 0.323232353, 14.0134668,
 36, 8, 0, 0.0713000745, 0.322662383, 14.3639784,
 37, 9, 0, 0.0802125856, 0.324054241, 14.7098465,
 38, 10, 0, 0.0891250968, 0.323228806, 15.0686541,
 39, 10, 0, 0.0891250968, 0.320751846, 15.4191036,
 40, 11, 0, 0.0980376005, 0.318823338, 15.7594051,
 41, 12, 0, 0.106950112, 0.318418682, 16.104557,
 42, 13, 0, 0.115862623, 0.318762124, 16.451416,
 43, 14, 0, 0.124775134, 0.317806393, 16.7975388,
 44, 15, 0, 0.133687645, 0.315653771, 17.1411018,
 45, 16, 0, 0.142600149, 0.313369036, 17.4808159,
 46, 17, 0, 0.151512653, 0.312513858, 17.8158207,
 47, 19, 0, 0.169337675, 0.312785119, 18.1543369,
 48, 20, 0, 0.178250194, 0.31343773, 18.4948578,
 49, 22, 0, 0.196075201, 0.313258767, 18.8350143,
 50, 23, 0, 0.20498772, 0.312570423, 19.1740704,
 51, 25, 0, 0.222812727, 0.312572777, 19.5104179,
 52, 27, 0, 0.240637749, 0.313047856, 19.8497677,
 53, 29, 0, 0.515701056, 0.315029174, 20.1900635,
 54, 31, 0, 0.551266611, 0.330613613, 20.5294952,
 55, 33, 0, 0.586832225, 0.41819948, 20.8664398,
 48000.0, 37,
 0, 1, 4.532, 1.000, -8.240, 0.000,
 1, 1, 0.904, 0.989, -8.240, 1.875,
 2, 1, 0.029, 0.989, -8.240, 3.750,
 3, 1, 0.009, 0.981, -8.240, 5.438,
 4, 1, 0.009, 0.985, -8.240, 6.857,
 5, 1, 0.009, 0.984, -8.240, 8.109,
 6, 1, 0.009, 0.980, -8.240, 9.237,
 7, 1, 0.009, 0.968, -8.240, 10.202,
 8, 1, 0.009, 0.954, -8.240, 11.083,
 9, 1, 0.009, 0.929, -8.240, 11.865,
 10, 1, 0.009, 0.906, -7.447, 12.554,
 11, 1, 0.009, 0.883, -7.447, 13.195,
 12, 1, 0.009, 0.844, -7.447, 13.781,
 13, 1, 0.009, 0.792, -7.447, 14.309,
 14, 1, 0.009, 0.747, -7.447, 14.803,
 15, 1, 0.009, 0.689, -7.447, 15.250,
 16, 1, 0.009, 0.644, -7.447, 15.667,
 17, 1, 0.009, 0.592, -7.447, 16.068,
 18, 1, 0.009, 0.553, -7.447, 16.409,
 19, 2, 0.018, 0.850, -7.447, 17.045,
 20, 2, 0.018, 0.811, -6.990, 17.607,
 21, 2, 0.018, 0.736, -6.990, 18.097,
 22, 2, 0.018, 0.665, -6.990, 18.528,
 23, 2, 0.018, 0.610, -6.990, 18.931,
 24, 2, 0.018, 0.544, -6.990, 19.295,
 25, 2, 0.018, 0.528, -6.990, 19.636,
 26, 3, 0.054, 0.621, -6.990, 20.038,
 27, 3, 0.054, 0.673, -6.990, 20.486,
 28, 3, 0.054, 0.635, -6.990, 20.900,
 29, 4, 0.114, 0.626, -6.990, 21.306,
 30, 4, 0.114, 0.636, -6.020, 21.722,
 31, 5, 0.452, 0.615, -6.020, 22.128,
 32, 5, 0.452, 0.579, -6.020, 22.513,
 33, 5, 0.452, 0.551, -6.020, 22.877,
 34, 7, 6.330, 0.552, -5.229, 23.241,
 35, 7, 6.330, 0.559, -5.229, 23.616,
 36, 11, 9.947, 0.528, -5.229, 23.974,
 37, 17, 153.727, 0.479, -5.229, 24.313,
 44100.0, 38,
 0, 1, 4.532, 1.000, -8.240, 0.000,
 1, 1, 0.904, 0.983, -8.240, 1.723,
 2, 1, 0.029, 0.983, -8.240, 3.445,
 3, 1, 0.009, 0.982, -8.240, 5.057,
 4, 1, 0.009, 0.985, -8.240, 6.422,
 5, 1, 0.009, 0.983, -8.240, 7.609,
 6, 1, 0.009, 0.978, -8.240, 8.710,
 7, 1, 0.009, 0.967, -8.240, 9.662,
 8, 1, 0.009, 0.948, -8.240, 10.515,
 9, 1, 0.009, 0.930, -8.240, 11.293,
 10, 1, 0.009, 0.914, -7.447, 12.009,
 11, 1, 0.009, 0.870, -7.447, 12.625,
 12, 1, 0.009, 0.845, -7.447, 13.210,
 13, 1, 0.009, 0.800, -7.447, 13.748,
 14, 1, 0.009, 0.749, -7.447, 14.241,
 15, 1, 0.009, 0.701, -7.447, 14.695,
 16, 1, 0.009, 0.653, -7.447, 15.125,
 17, 1, 0.009, 0.590, -7.447, 15.508,
 18, 1, 0.009, 0.616, -7.447, 15.891,
 19, 2, 0.018, 0.860, -7.447, 16.537,
 20, 2, 0.018, 0.823, -6.990, 17.112,
 21, 2, 0.018, 0.762, -6.990, 17.621,
 22, 2, 0.018, 0.688, -6.990, 18.073,
 23, 2, 0.018, 0.612, -6.990, 18.470,
 24, 2, 0.018, 0.594, -6.990, 18.849,
 25, 3, 0.027, 0.658, -6.990, 19.271,
 26, 3, 0.027, 0.706, -6.990, 19.741,
 27, 3, 0.054, 0.660, -6.990, 20.177,
 28, 3, 0.054, 0.606, -6.990, 20.576,
 29, 3, 0.054, 0.565, -6.990, 20.950,
 30, 4, 0.114, 0.560, -6.020, 21.316,
 31, 4, 0.114, 0.579, -6.020, 21.699,
 32, 5, 0.452, 0.567, -6.020, 22.078,
 33, 5, 0.452, 0.534, -6.020, 22.438,
 34, 5, 0.452, 0.514, -5.229, 22.782,
 35, 7, 6.330, 0.520, -5.229, 23.133,
 36, 7, 6.330, 0.518, -5.229, 23.484,
 37, 7, 6.330, 0.507, -5.229, 23.828,
 38, 19, 171.813, 0.447, -4.559, 24.173,
 32000.0, 41,
 0, 1, 4.532, 1.000, -8.240, 0.000,
 1, 1, 0.904, 0.985, -8.240, 1.250,
 2, 1, 0.090, 0.983, -8.240, 2.500,
 3, 1, 0.029, 0.983, -8.240, 3.750,
 4, 1, 0.009, 0.981, -8.240, 4.909,
 5, 1, 0.009, 0.975, -8.240, 5.958,
 6, 1, 0.009, 0.959, -8.240, 6.857,
 7, 1, 0.009, 0.944, -8.240, 7.700,
 8, 1, 0.009, 0.933, -8.240, 8.500,
 9, 1, 0.009, 0.920, -8.240, 9.237,
 10, 1, 0.009, 0.892, -7.447, 9.895,
 11, 1, 0.009, 0.863, -7.447, 10.500,
 12, 1, 0.009, 0.839, -7.447, 11.083,
 13, 1, 0.009, 0.786, -7.447, 11.604,
 14, 1, 0.009, 0.755, -7.447, 12.107,
 15, 1, 0.009, 0.698, -7.447, 12.554,
 16, 1, 0.009, 0.673, -7.447, 13.000,
 17, 1, 0.009, 0.605, -7.447, 13.391,
 18, 1, 0.009, 0.629, -7.447, 13.781,
 19, 2, 0.018, 0.883, -7.447, 14.474,
 20, 2, 0.018, 0.858, -6.990, 15.096,
 21, 2, 0.018, 0.829, -6.990, 15.667,
 22, 2, 0.018, 0.767, -6.990, 16.177,
 23, 2, 0.018, 0.705, -6.990, 16.636,
 24, 2, 0.018, 0.637, -6.990, 17.057,
 25, 2, 0.018, 0.564, -6.990, 17.429,
 26, 2, 0.018, 0.550, -6.990, 17.786,
 27, 3, 0.027, 0.603, -6.990, 18.177,
 28, 3, 0.027, 0.635, -6.990, 18.597,
 29, 3, 0.027, 0.592, -6.990, 18.994,
 30, 3, 0.027, 0.533, -6.020, 19.352,
 31, 3, 0.027, 0.518, -6.020, 19.693,
 32, 4, 0.072, 0.568, -6.020, 20.066,
 33, 4, 0.072, 0.594, -6.020, 20.462,
 34, 4, 0.072, 0.568, -5.229, 20.841,
 35, 5, 0.143, 0.536, -5.229, 21.201,
 36, 5, 0.143, 0.522, -5.229, 21.549,
 37, 6, 0.172, 0.542, -5.229, 21.911,
 38, 7, 0.633, 0.539, -4.559, 22.275,
 39, 7, 0.633, 0.519, -4.559, 22.625,
 40, 8, 0.723, 0.514, -3.980, 22.971,
 41, 10, 9.043, 0.518, -3.980, 23.321,
 24000, 44,
 0, 1, 8.91250896, 0.971850038, 0.150000006, 0,
 1, 1, 8.91250896, 0.874727964, 0.150000006, 0.946573138,
 2, 1, 0.891250908, 0.85779953, 0.150000006, 1.88476217,
 3, 1, 0.0891250968, 0.839743853, 0.150000006, 2.8056457,
 4, 1, 0.028183829, 0.82260257, 0.150000006, 3.70133615,
 5, 1, 0.00891250931, 0.80018574, 0.150000006, 4.56532001,
 6, 1, 0.00891250931, 0.771475196, 0.150000006, 5.39263105,
 7, 1, 0.00891250931, 0.737389982, 0.150000006, 6.17986727,
 8, 1, 0.00891250931, 0.701111019, 0.150000006, 6.92507982,
 9, 1, 0.00891250931, 0.65977633, 0.150000006, 7.62757969,
 10, 1, 0.00891250931, 0.615037441, 0.150000006, 8.28770351,
 11, 1, 0.00891250931, 0.568658054, 0.150000006, 8.90657234,
 12, 1, 0.00891250931, 0.522260666, 0.180000007, 9.48587132,
 13, 1, 0.00891250931, 0.478903115, 0.180000007, 10.0276566,
 14, 1, 0.00891250931, 0.43808648, 0.180000007, 10.5341988,
 15, 1, 0.00891250931, 0.412505627, 0.180000007, 11.0078659,
 16, 1, 0.00891250931, 0.39070797, 0.180000007, 11.4510288,
 17, 1, 0.00891250931, 0.371887118, 0.180000007, 11.866004,
 18, 1, 0.00891250931, 0.367617637, 0.180000007, 12.2550087,
 19, 1, 0.00891250931, 0.422220588, 0.180000007, 12.6201363,
 20, 2, 0.0178250186, 0.564990044, 0.180000007, 13.2772083,
 21, 2, 0.0178250186, 0.519700944, 0.180000007, 13.871047,
 22, 2, 0.0178250186, 0.455360681, 0.200000003, 14.4024391,
 23, 2, 0.0178250186, 0.408867925, 0.200000003, 14.8811684,
 24, 2, 0.0178250186, 0.381538749, 0.200000003, 15.3153324,
 25, 2, 0.0178250186, 0.362357527, 0.200000003, 15.7116165,
 26, 2, 0.0178250186, 0.365735918, 0.200000003, 16.0755405,
 27, 3, 0.0267375279, 0.38064, 0.200000003, 16.4882088,
 28, 3, 0.0267375279, 0.379183382, 0.200000003, 16.9410992,
 29, 3, 0.0267375279, 0.360672712, 0.200000003, 17.3513336,
 30, 3, 0.0267375279, 0.343065977, 0.200000003, 17.7264423,
 31, 3, 0.0267375279, 0.339290261, 0.200000003, 18.0722466,
 32, 4, 0.0356500372, 0.342963994, 0.200000003, 18.4426575,
 33, 4, 0.0356500372, 0.343128443, 0.200000003, 18.8344078,
 34, 4, 0.0356500372, 0.343988508, 0.25, 19.1955795,
 35, 5, 0.0445625484, 0.343928397, 0.25, 19.5697021,
 36, 5, 0.0445625484, 0.339527696, 0.25, 19.9551182,
 37, 5, 0.0889139697, 0.336541563, 0.280000001, 20.3115921,
 38, 6, 0.106696762, 0.334955156, 0.280000001, 20.6737747,
 39, 6, 0.169102982, 0.335601568, 0.300000012, 21.0404968,
 40, 7, 0.1972868, 0.334716886, 0.300000012, 21.4060211,
 41, 7, 0.1972868, 0.331676662, 0.300000012, 21.7696877,
 42, 8, 0.713000774, 0.328550965, 0.400000006, 22.1267223,
 43, 8, 0.713000774, 0.339241952, 0.400000006, 22.4769249,
 44, 9, 0.802125871, 0.425207615, 0.400000006, 22.8164864,
 22050, 44,
 0, 1, 8.91250896, 0.954045713, 0.150000006, 0,
 1, 1, 8.91250896, 0.833381653, 0.150000006, 0.869851649,
 2, 1, 0.891250908, 0.815945923, 0.150000006, 1.73325908,
 3, 1, 0.0891250968, 0.794244766, 0.150000006, 2.58322191,
 4, 1, 0.028183829, 0.776486695, 0.150000006, 3.4134295,
 5, 1, 0.00891250931, 0.755260408, 0.150000006, 4.21850443,
 6, 1, 0.00891250931, 0.731070817, 0.150000006, 4.99414825,
 7, 1, 0.00891250931, 0.701775849, 0.150000006, 5.73718691,
 8, 1, 0.00891250931, 0.667876124, 0.150000006, 6.44553185,
 9, 1, 0.00891250931, 0.630284071, 0.150000006, 7.11807632,
 10, 1, 0.00891250931, 0.590170324, 0.150000006, 7.75455618,
 11, 1, 0.00891250931, 0.548788548, 0.150000006, 8.3553915,
 12, 1, 0.00891250931, 0.507795513, 0.150000006, 8.92152882,
 13, 1, 0.00891250931, 0.469515711, 0.180000007, 9.45430183,
 14, 1, 0.00891250931, 0.432291716, 0.180000007, 9.95530319,
 15, 1, 0.00891250931, 0.411131173, 0.180000007, 10.4262848,
 16, 1, 0.00891250931, 0.390771538, 0.180000007, 10.8690758,
 17, 1, 0.00891250931, 0.373318017, 0.180000007, 11.2855215,
 18, 1, 0.00891250931, 0.36956048, 0.180000007, 11.6774378,
 19, 1, 0.00891250931, 0.42595759, 0.180000007, 12.0465794,
 20, 2, 0.0178250186, 0.576900065, 0.180000007, 12.7141209,
 21, 2, 0.0178250186, 0.533114731, 0.180000007, 13.3197365,
 22, 2, 0.0178250186, 0.469967514, 0.180000007, 13.8634901,
 23, 2, 0.0178250186, 0.417268544, 0.200000003, 14.3544445,
 24, 2, 0.0178250186, 0.389299124, 0.200000003, 14.8002586,
 25, 2, 0.0178250186, 0.362824857, 0.200000003, 15.2073727,
 26, 2, 0.0178250186, 0.346801281, 0.200000003, 15.5811834,
 27, 2, 0.0178250186, 0.349400043, 0.200000003, 15.926218,
 28, 3, 0.0267375279, 0.364026934, 0.200000003, 16.3194923,
 29, 3, 0.0267375279, 0.36560446, 0.200000003, 16.752903,
 30, 3, 0.0267375279, 0.354275256, 0.200000003, 17.1470814,
 31, 3, 0.0267375279, 0.351219416, 0.200000003, 17.5086212,
 32, 4, 0.0356500372, 0.354364097, 0.200000003, 17.8938141,
 33, 4, 0.0356500372, 0.348915905, 0.200000003, 18.2992878,
 34, 4, 0.0356500372, 0.337649345, 0.200000003, 18.6713982,
 35, 4, 0.0356500372, 0.332076877, 0.25, 19.015646,
 36, 5, 0.0445625484, 0.330793113, 0.25, 19.3734016,
 37, 5, 0.0445625484, 0.327528268, 0.25, 19.7430382,
 38, 5, 0.0889139697, 0.32551071, 0.280000001, 20.0859604,
 39, 6, 0.106696762, 0.324436843, 0.280000001, 20.4354992,
 40, 6, 0.106696762, 0.325835049, 0.280000001, 20.7905579,
 41, 7, 0.1972868, 0.326221824, 0.300000012, 21.1458054,
 42, 7, 0.1972868, 0.325960994, 0.300000012, 21.5005951,
 43, 8, 0.225470632, 0.339019388, 0.300000012, 21.8504524,
 44, 8, 0.713000774, 0.426850349, 0.400000006, 22.1951065,
 16000, 45,
 0, 1, 8.91250896, 0.834739447, 0.150000006, 0,
 1, 1, 8.91250896, 0.623757005, 0.150000006, 0.631518543,
 2, 1, 0.891250908, 0.60420388, 0.150000006, 1.2606914,
 3, 1, 0.891250908, 0.591974258, 0.150000006, 1.88476217,
 4, 1, 0.0891250968, 0.575301588, 0.150000006, 2.50111985,
 5, 1, 0.028183829, 0.561547697, 0.150000006, 3.1073606,
 6, 1, 0.028183829, 0.546665847, 0.150000006, 3.70133615,
 7, 1, 0.00891250931, 0.52986443, 0.150000006, 4.28118753,
 8, 1, 0.00891250931, 0.511183441, 0.150000006, 4.84536505,
 9, 1, 0.00891250931, 0.490902334, 0.150000006, 5.39263105,
 10, 1, 0.00891250931, 0.46938166, 0.150000006, 5.92205667,
 11, 1, 0.00891250931, 0.447003782, 0.150000006, 6.43299866,
 12, 1, 0.00891250931, 0.428170592, 0.150000006, 6.92507982,
 13, 1, 0.00891250931, 0.414536625, 0.150000006, 7.39815664,
 14, 1, 0.00891250931, 0.401033074, 0.150000006, 7.85228777,
 15, 1, 0.00891250931, 0.38779071, 0.150000006, 8.28770351,
 16, 1, 0.00891250931, 0.374230444, 0.150000006, 8.704772,
 17, 1, 0.00891250931, 0.360547513, 0.180000007, 9.10397339,
 18, 1, 0.00891250931, 0.348256677, 0.180000007, 9.48587132,
 19, 1, 0.00891250931, 0.350327015, 0.180000007, 9.85109234,
 20, 1, 0.00891250931, 0.406330824, 0.180000007, 10.200304,
 21, 2, 0.0178250186, 0.554098248, 0.180000007, 10.846529,
 22, 2, 0.0178250186, 0.528312504, 0.180000007, 11.4447651,
 23, 2, 0.0178250186, 0.476527005, 0.180000007, 11.9928398,
 24, 2, 0.0178250186, 0.428205669, 0.180000007, 12.495945,
 25, 2, 0.0178250186, 0.402271926, 0.180000007, 12.9588718,
 26, 2, 0.0178250186, 0.378024429, 0.180000007, 13.3859692,
 27, 2, 0.0178250186, 0.36254698, 0.180000007, 13.7811394,
 28, 2, 0.0178250186, 0.368058592, 0.200000003, 14.1478529,
 29, 3, 0.0267375279, 0.385963261, 0.200000003, 14.5674343,
 30, 3, 0.0267375279, 0.38640517, 0.200000003, 15.0304852,
 31, 3, 0.0267375279, 0.367834061, 0.200000003, 15.4513416,
 32, 3, 0.0267375279, 0.349686563, 0.200000003, 15.836277,
 33, 3, 0.0267375279, 0.345709383, 0.200000003, 16.1904697,
 34, 4, 0.0356500372, 0.34871915, 0.200000003, 16.5683517,
 35, 4, 0.0356500372, 0.347054332, 0.200000003, 16.9660263,
 36, 4, 0.0356500372, 0.346329987, 0.200000003, 17.3304482,
 37, 5, 0.0445625484, 0.344658494, 0.200000003, 17.7055588,
 38, 5, 0.0445625484, 0.338779271, 0.200000003, 18.0899811,
 39, 5, 0.0445625484, 0.334878683, 0.200000003, 18.4440536,
 40, 6, 0.0534750558, 0.332811534, 0.200000003, 18.8030052,
 41, 6, 0.0534750558, 0.333717585, 0.25, 19.1665268,
 42, 7, 0.062387567, 0.333986402, 0.25, 19.5299358,
 43, 7, 0.062387567, 0.334142625, 0.25, 19.8934898,
 44, 8, 0.142262354, 0.34677428, 0.280000001, 20.2535706,
 45, 8, 0.142262354, 0.436254472, 0.280000001, 20.610569,
 48000.0, 20,
 0, 3, 0, 4, 1.000, 0.056,
 1, 3, 4, 7, 0.944, 0.611,
 2, 4, 7, 11, 0.389, 0.167,
 3, 3, 11, 14, 0.833, 0.722,
 4, 3, 14, 17, 0.278, 0.639,
 5, 2, 17, 19, 0.361, 0.417,
 6, 3, 19, 22, 0.583, 0.083,
 7, 2, 22, 24, 0.917, 0.750,
 8, 3, 24, 27, 0.250, 0.417,
 9, 3, 27, 30, 0.583, 0.648,
 10, 3, 30, 33, 0.352, 0.611,
 11, 3, 33, 36, 0.389, 0.625,
 12, 4, 36, 40, 0.375, 0.144,
 13, 3, 40, 43, 0.856, 0.389,
 14, 3, 43, 46, 0.611, 0.160,
 15, 3, 46, 49, 0.840, 0.217,
 16, 3, 49, 52, 0.783, 0.184,
 17, 2, 52, 54, 0.816, 0.886,
 18, 3, 54, 57, 0.114, 0.313,
 19, 2, 57, 59, 0.687, 0.452,
 20, 1, 59, 60, 0.548, 0.908,
 44100.0, 20,
 0, 3, 0, 4, 1.000, 0.056,
 1, 3, 4, 7, 0.944, 0.611,
 2, 4, 7, 11, 0.389, 0.167,
 3, 3, 11, 14, 0.833, 0.722,
 4, 3, 14, 17, 0.278, 0.139,
 5, 1, 17, 18, 0.861, 0.917,
 6, 3, 18, 21, 0.083, 0.583,
 7, 3, 21, 24, 0.417, 0.250,
 8, 3, 24, 27, 0.750, 0.805,
 9, 3, 27, 30, 0.194, 0.574,
 10, 3, 30, 33, 0.426, 0.537,
 11, 3, 33, 36, 0.463, 0.819,
 12, 4, 36, 40, 0.180, 0.100,
 13, 3, 40, 43, 0.900, 0.468,
 14, 3, 43, 46, 0.532, 0.623,
 15, 3, 46, 49, 0.376, 0.450,
 16, 3, 49, 52, 0.550, 0.552,
 17, 3, 52, 55, 0.448, 0.403,
 18, 2, 55, 57, 0.597, 0.643,
 19, 2, 57, 59, 0.357, 0.722,
 20, 2, 59, 61, 0.278, 0.960,
 32000, 20,
 0, 1, 0, 2, 1.000, 0.528,
 1, 2, 2, 4, 0.472, 0.305,
 2, 2, 4, 6, 0.694, 0.083,
 3, 1, 6, 7, 0.917, 0.861,
 4, 2, 7, 9, 0.139, 0.639,
 5, 2, 9, 11, 0.361, 0.417,
 6, 3, 11, 14, 0.583, 0.083,
 7, 2, 14, 16, 0.917, 0.750,
 8, 3, 16, 19, 0.250, 0.870,
 9, 3, 19, 22, 0.130, 0.833,
 10, 4, 22, 26, 0.167, 0.389,
 11, 4, 26, 30, 0.611, 0.478,
 12, 4, 30, 34, 0.522, 0.033,
 13, 3, 34, 37, 0.967, 0.917,
 14, 4, 37, 41, 0.083, 0.617,
 15, 3, 41, 44, 0.383, 0.995,
 16, 4, 44, 48, 0.005, 0.274,
 17, 3, 48, 51, 0.726, 0.480,
 18, 3, 51, 54, 0.519, 0.261,
 19, 2, 54, 56, 0.739, 0.884,
 20, 2, 56, 58, 0.116, 1.000,
 24000, 20,
 0, 2, 0, 3, 1, 0.916666746,
 1, 3, 3, 6, 0.0833332539, 0.583333492,
 2, 3, 6, 9, 0.416666508, 0.25,
 3, 2, 9, 11, 0.75, 0.916666985,
 4, 3, 11, 14, 0.0833330154, 0.583333969,
 5, 3, 14, 17, 0.416666031, 0.25,
 6, 3, 17, 20, 0.75, 0.537036896,
 7, 3, 20, 23, 0.462963104, 0.5,
 8, 4, 23, 27, 0.5, 0.0555559993,
 9, 3, 27, 30, 0.944444001, 0.402778625,
 10, 3, 30, 33, 0.597221375, 0.766667187,
 11, 3, 33, 36, 0.233332828, 0.805555999,
 12, 3, 36, 39, 0.194444016, 0.769841909,
 13, 3, 39, 42, 0.23015812, 0.611111104,
 14, 3, 42, 45, 0.388888896, 0.449494779,
 15, 3, 45, 48, 0.550505221, 0.194444954,
 16, 2, 48, 50, 0.805555046, 0.913194656,
 17, 3, 50, 53, 0.0868053436, 0.580555737,
 18, 3, 53, 56, 0.419444263, 0.113426208,
 19, 2, 56, 58, 0.886573792, 0.533730626,
 20, 2, 58, 60, 0.466269344, 0.691176474,
 22050, 20,
 0, 2, 0, 3, 1, 0.916666746,
 1, 3, 3, 6, 0.0833332539, 0.583333492,
 2, 3, 6, 9, 0.416666508, 0.25,
 3, 2, 9, 11, 0.75, 0.916666985,
 4, 3, 11, 14, 0.0833330154, 0.583333969,
 5, 3, 14, 17, 0.416666031, 0.25,
 6, 3, 17, 20, 0.75, 0.203703582,
 7, 3, 20, 23, 0.796296418, 0.166666687,
 8, 3, 23, 26, 0.833333313, 0.722222686,
 9, 4, 26, 30, 0.277777344, 0.152778625,
 10, 3, 30, 33, 0.847221375, 0.566667199,
 11, 3, 33, 36, 0.433332831, 0.93518573,
 12, 4, 36, 40, 0.0648142472, 0.118056297,
 13, 3, 40, 43, 0.881943703, 0.0925937295,
 14, 2, 43, 45, 0.907406271, 0.934344172,
 15, 3, 45, 48, 0.0656557977, 0.575398028,
 16, 3, 48, 51, 0.424601972, 0.232026935,
 17, 2, 51, 53, 0.767973065, 0.758334339,
 18, 3, 53, 56, 0.241665646, 0.187501252,
 19, 2, 56, 58, 0.812498748, 0.533731699,
 20, 2, 58, 60, 0.466268271, 0.257577598,
 16000, 20,
 0, 1, 0, 2, 1, 0.944444478,
 1, 2, 2, 4, 0.0555555038, 0.722222328,
 2, 2, 4, 6, 0.277777672, 0.5,
 3, 2, 6, 8, 0.5, 0.27777797,
 4, 2, 8, 10, 0.72222203, 0.0555559993,
 5, 1, 10, 11, 0.944444001, 0.833333313,
 6, 3, 11, 14, 0.166666672, 0.203703582,
 7, 3, 14, 17, 0.796296418, 0.166666687,
 8, 3, 17, 20, 0.833333313, 0.54166698,
 9, 3, 20, 23, 0.458333015, 0.652778625,
 10, 4, 23, 27, 0.347221375, 0.166667163,
 11, 3, 27, 30, 0.833332837, 0.722222924,
 12, 4, 30, 34, 0.277777106, 0.277778625,
 13, 3, 34, 37, 0.722221375, 0.604167938,
 14, 3, 37, 40, 0.395832062, 0.627778649,
 15, 3, 40, 43, 0.37222138, 0.542736351,
 16, 3, 43, 46, 0.457263649, 0.371528625,
 17, 3, 46, 49, 0.628471375, 0.00833433867,
 18, 2, 49, 51, 0.991665661, 0.500001311,
 19, 2, 51, 53, 0.499998659, 0.886832893,
 20, 2, 53, 55, 0.113167092, 0.629034221,
 48000.0, 11,
 0, 2, 0, 2, 1.000, 0.167,
 1, 2, 3, 5, 0.833, 0.833,
 2, 3, 5, 8, 0.167, 0.500,
 3, 3, 8, 11, 0.500, 0.167,
 4, 4, 11, 15, 0.833, 0.167,
 5, 4, 15, 19, 0.833, 0.583,
 6, 3, 19, 22, 0.417, 0.917,
 7, 4, 22, 26, 0.083, 0.944,
 8, 4, 26, 30, 0.055, 0.042,
 9, 2, 30, 32, 0.958, 0.567,
 10, 3, 32, 35, 0.433, 0.167,
 11, 2, 35, 37, 0.833, 0.618,
 44100.0, 11,
 0, 2, 0, 2, 1.000, 0.167,
 1, 2, 3, 5, 0.833, 0.833,
 2, 3, 5, 8, 0.167, 0.500,
 3, 3, 8, 11, 0.500, 0.167,
 4, 4, 11, 15, 0.833, 0.167,
 5, 5, 15, 20, 0.833, 0.250,
 6, 3, 20, 23, 0.750, 0.583,
 7, 4, 23, 27, 0.417, 0.055,
 8, 3, 27, 30, 0.944, 0.375,
 9, 3, 30, 33, 0.625, 0.300,
 10, 3, 33, 36, 0.700, 0.167,
 11, 2, 36, 38, 0.833, 1.000,
 32000, 11,
 0, 2, 0, 2, 1.000, 0.167,
 1, 2, 3, 5, 0.833, 0.833,
 2, 3, 5, 8, 0.167, 0.500,
 3, 3, 8, 11, 0.500, 0.167,
 4, 4, 11, 15, 0.833, 0.167,
 5, 5, 15, 20, 0.833, 0.250,
 6, 4, 20, 24, 0.750, 0.250,
 7, 5, 24, 29, 0.750, 0.055,
 8, 4, 29, 33, 0.944, 0.375,
 9, 4, 33, 37, 0.625, 0.472,
 10, 3, 37, 40, 0.528, 0.937,
 11, 1, 40, 41, 0.062, 1.000,
 24000, 11,
 0, 3, 0, 4, 1, 0.166666746,
 1, 2, 4, 6, 0.833333254, 0.833333492,
 2, 3, 6, 9, 0.166666508, 0.5,
 3, 4, 9, 13, 0.5, 0.5,
 4, 5, 13, 18, 0.5, 0.833333969,
 5, 5, 18, 23, 0.166666031, 0.25,
 6, 4, 23, 27, 0.75, 0.25,
 7, 3, 27, 30, 0.75, 0.611111999,
 8, 4, 30, 34, 0.388888031, 0.208333969,
 9, 3, 34, 37, 0.791666031, 0.766667187,
 10, 4, 37, 41, 0.233332828, 0.45238167,
 11, 4, 41, 45, 0.54761833, 0.277778625,
 22050, 11,
 0, 3, 0, 4, 1, 0.166666746,
 1, 2, 4, 6, 0.833333254, 0.833333492,
 2, 3, 6, 9, 0.166666508, 0.5,
 3, 4, 9, 13, 0.5, 0.5,
 4, 4, 13, 17, 0.5, 0.5,
 5, 4, 17, 21, 0.5, 0.916666985,
 6, 4, 21, 25, 0.0833330154, 0.25,
 7, 4, 25, 29, 0.75, 0.611111999,
 8, 4, 29, 33, 0.388888031, 0.458333969,
 9, 4, 33, 37, 0.541666031, 0.633334339,
 10, 4, 37, 41, 0.366665661, 0.583334565,
 11, 4, 41, 45, 0.416665405, 0.437500954,
 16000, 11,
 0, 0, 0, 4, 1, 0.166666746,
 1, 0, 4, 6, 0.833333254, 0.833333492,
 2, 0, 6, 9, 0.166666508, 0.5,
 3, 0, 9, 13, 0.5, 0.5,
 4, 0, 13, 18, 0.5, 0.833333969,
 5, 0, 18, 23, 0.166666031, 0.75,
 6, 0, 23, 27, 0.25, 0.75,
 7, 0, 27, 31, 0.25, 0.611111999,
 8, 0, 31, 35, 0.388888031, 0.458333969,
 9, 0, 35, 39, 0.541666031, 0.166667163,
 10, 0, 39, 42, 0.833332837, 0.805555999,
 11, 0, 42, 46, 0.194444016, 0.4375};

